Many instrument applications require the creation and maintenance of a precisely timed event stream. Frequency agile radar, arbitrary radio frequency (RF) generation, pulsed magnetic field sources, time domain instrumentation such as NMR spectrometers, MRI imagers and the like, are a few examples. Such apparatus may be described in an instantaneous sense as existing in a well define “state”. The state in turn, is described by the quantitative condition of each of the independent variables of the apparatus. By way of a simple example, an RF synthesizer operating to produce a desired waveform from N frequency components may specify the frequency component(s), with corresponding values of amplitude, phase, state duration and perhaps a waveform repetition rate for 3N+2 variables to specify the state. The RF waveform may also be controllable as to shape, or time dependence with further computational burden. These parameters may repeat, repeat with changes in some parameters, repeat in a cyclic manner, etc., to produce the desired operation. A module that assembles the serial stream of states and provides the stream to the several sub-devices of the apparatus is referenced herein as a controller.
Another time sensitive function in an NMR device which is the subject of a controller operation is the management of magnetic gradients. In each of k spatial coordinates, a magnetic gradient is specified by ∂Bz/∂X(k) (t), (that is, the time profile, or shape), the time for gating this quantity “on” and the duration. Again, a vector gradient pulse may be selectable in time dependence by ordering the instantaneous ordinate values, and the orientation of the resultant vector is determined from the vector sum of its components, each of which is the product of a corresponding controller.
Very early, the control function was implemented in a digital processor on an interrupt actuated basis where differing levels of priority were assigned to multiple tasks required for the operation of the apparatus. The processor, while executing some lower priority task, would receive an interrupt to activate a higher priority task, such as controlling the status of modules comprising the apparatus, e.g., an NMR instrument. In the case of an NMR instrument, RF excitation in the form of multiple RF pulses of diverse nature, magnetic field gradients, data acquisition, precise delays between various states and other operational parameters and logical values, all define the instantaneous state to be retrieved from memory for presentation to appropriate command buffer(s). The processor, in this generic prior art structure, might intersperse these higher priority functions with lower priority tasks as allowed by the interrupt structure. This presented a ponderous procedure with considerable complication in the software. Specific examples representative of such prior architecture are the NMR instruments manufactured by Varian under the name “Unity”.
In further developing prior art, a controller processor, communicating with a separate host processor, offered greatly improved synchronous properties in sequencing the states of the apparatus. A host processor performs high level operations including description of the NMR pulse sequence in terms of parameter values defining the pulse sequence at consecutive time increments (as well as conducting post acquisition operations). The current operational information is placed by the host on a bus communicating with (output) controller processor(s) that operates to establish the sequence of physical states of RF power and magnetic field gradient. This division of resources separates the synchronous operations of the RF power source, transmit/receive switch and gradient power supplies from the time non-critical operations of the host.
The prior art controller shown in FIG. 2a derives fundamental instruction from a host computer 34, through a bus interface 92 to a controller memory 94. A state machine (stuffer) 96 assembles parameter values associated with selected controlled devices 101, 102, etc and the duration to associate with that macro-state of the apparatus defined by parameter values of all controllable devices contributing to the state of the apparatus. This triplet of data (device, parameter value, duration) is serially directed (stuffed) to the various controllable devices.
The prior art controller function of FIG. 2a presents device select, duration and parameter values to an output bus 100, common to the controllable devices that determine the state of the apparatus. Consequently, the rate at which the state of the system may be altered is distinctly limited because multiple parameter changes require a corresponding multiple device select instructions. Where the devices 101, 102, etc., retain their respective parameter values as previously set (that is, NRZ type devices), it follows that only changes to these values need be passed through the bus and ultimately, this type of controller may be regarded as a memory efficiency benchmark.
An advance in prior art controller apparatus is shown in FIG. 2b wherein the structure is similar to that of FIG. 2a with the exception that all controlled devices are addressed in parallel through independent control signals from the output of asynchronous-to-synchronous buffer 98. Buffer 98 is preferably a FIFO device wherein the (internal) clocking of the buffer content is derived from a field of a buffer word and this time datum determines the persistence time, or duration of the state. A device such as FIFO 98, or the equivalent provides for conversion of the asynchronous event stream to implementation of a synchronous sequence of physical states. The FIFO has a width (the FIFO word) sufficient to define the system state instantaneously. The FIFO also has a depth, that is, a forward store of consecutive states including therein, the duration of the corresponding state. It is a major function of the processor 96 to write states to the FIFO at such rate to avoid an underflow condition and similarly to avoid a FIFO overflow condition. The FIFO status depends upon the state duration that is specified within the FIFO word and thus remains independent of the activity of processor 96. Such self clocked FIFO buffers are the subject of U.S. Pat. Nos. 4,191,919 and 4,375,676, commonly assigned herewith. The speed limiting aspect of separately addressing each controlled device is therefore eliminated. The buffer 98 must now accommodate a substantially wider buffer word in order to convey to each device, its parameter value(s), but the state duration is directly controlled from the buffer output. A more subtle limitation is imposed on the memory 94. Because all controlled devices are set to desired parameter values, the memory 94 must accommodate the entire definition of each of the successive states of the apparatus. For magnetic resonance systems, the event stream for a measurement may require of the order of 108 words to be written from buffer 98. This word stream passes through memory 94, imposing a significant requirement on memory size and speed. In spite of this memory limitation, prior art of this type represents a speed benchmark.
A further advance in prior art replaces the state machine stuffer 96 with an intelligent processor 97 as shown in FIG. 2c. Data to create the necessary stream of state definitions from stored data, computation or a combination thereof is treated by processor 97 and the fully assembled state description is presented to the FIFO 98. It is important to recognize that processor 97 attends to several functions: unloading of buffered data from the bus, reassembly of the state with possibly required computation (including masking and updating the state where only state changes are transmitted on the bus and saving the now updated state for reference in forming the next state), and managing the output to the FIFO 98 to assure the operation is neither too soon nor too late. The computational load and the data management burden each lead to extreme situations which strain both memory capacity and transfer rate as applied to prior art systems. Exemplary prior art are the NMR instruments manufactured by Chemagnetics under the name “Infinity”.
A modern fourier transform NMR instrument executes a complex retinue of instructions affecting the instantaneous RF and magnetic attributes of a sensitive volume within a magnetic field. The sensitive volume may contain a substance examined for analytical study, or an object, the internal volume of which is imaged through exploitation of magnetic resonance phenomena. For example, various measurement techniques commonly require precise control of RF phase, RF pulse shape and RF amplitude and precise cycling of phase over different phase angles as applied to the content of the sensitive volume of the instrument. Many measurement techniques require application of magnetic gradient pulses to the sensitive volume, with similar requirements to phase, shape, direction and amplitude. The gradients may be independent in magnetic component and spatial dependence requiring independent sets of control apparatus. The instantaneous specification of these parameters expresses the output state of the controller. The sequence of states defines the preparation of the magnetic resonance measurement. Acquisition of spectral data represents another instrumental state commencing with precise relative timing.
A realistic specification for the functional requirements of a modern NMR instrument include the precision required for the parameters describing a state, required gating instructions and the relevant time intervals and data rates. Table I summarizes desirable precision for an RF controller and table II represents a similar summary for a vector controller as employed for typical NMR apparatus.
TABLE IParameter#. bitsamplitude16phase16attenuator8gates8state duration26multiplexer16
TABLE IIParameter# bitsamplitude X16amplitude Y16amplitude Z16state duration26
It could be observed that an arbitrary controller characterized by extremely fast clocking could satisfy the requirement of aligning instrumental states on a precise time scale. The practical limit for the apparatus is not the limit of what might be achieved, but rather the requirements of the instrumental function. The physical phenomena to be observed (NMR spectra or images) are manifest in the first instance as line widths, chemical shifts, J coupling and the like, typically represented in approximately 5 MHz of bandwidth. MRI conveys spatial distributions with emphasis on spatial resolution and dynamic range, typically consuming 2 to 5 Mhz bandwidth. Assuming a 20 MHz bandwidth requirement, there is suggested a fundamental unit of time alignment for instrumental states of the apparatus of, say, 50 ns. As table I illustrates, the description of a state might require 70 bits. At a fundamental state duration of 50 ns, the system must supply states at the transfer rate of 1400 Mbits/sec. Although contemporary processors operate at such clocking frequencies, it is necessary to observe that the hypothetical 1400 Mbits/sec is a transfer rate. The sequential states of the NMR apparatus must be created (computed or derived from memory) and revised (scaling, phase cycling, vector rotation, etc) and these creation and revision operations are instrumentally and/or computationally intensive with resulting limits on the rate of physical state evolution controlling the apparatus.
A representative contemporary commercially available NMR system is the Varian INOVA® featuring a minimum time resolved state duration of 100 ns. For this system, two synchronized RF modules transfer a total of 60 bits suggesting a transfer rate of about 600 MHz whereas the operational rate for the control processor is 160 MHz. This rate disparity or gap is accommodated by very large buffers (which also present limitations for such use).
Another example of prior art is a waveform controller/synthesizer described in U.S. Pat. No. 4,707,797.
As pointed out above, a progression of many billions of well define instrumental states may be required for NMR measurements of only moderate complexity. In the limit of a large gap between a sustained state evolution rate and the control processor transfer rate, extremely massive buffering becomes economically impractical to narrow that gap. The design philosophy problem may be summarized with the observation that any high speed processor driven instrument system may be regarded as having a finite write rate, Ω, and a finite read (or evolution) rate, ρ. For the earliest prior art in an NMR application, the demand upon instrumental process rate was minimal. As the demand for higher resonance frequencies and greater complexity in the prescription of the instantaneous state increased, various schemes were implemented to narrow that excess of the state evolution rate over the rate at which state data is presented to hardware. The creation of the state sequence and formatting of those states to output devices represents a considerable computational burden and measures which reduce that burden are desirable. It should be recognized that in addition to the recognizable computational burden there is a time consuming formatting task necessary to reduce computed parameters to elements of a state descriptor. The excess of the read rate over the write rate may be accommodated by a buffer stage with accompanying requirements that become onerous as the aforesaid gap increases. The RF and vector controllers of the present invention may be viewed as specific measures interspersed between the state sequence generating processor and those output devices to which the state is written. Reduction of the aforesaid rate gap should be recognized as enabling a maximum sustained rate of device instructions processed to approach a maximum (hardware defined) write rate to external devices.